import { defineConfig } from 'vite';
import react from '@vitejs/plugin-react';
import legacy from '@vitejs/plugin-legacy';

// https://vitejs.dev/config/
export default defineConfig(({ command, mode }) => {
  return {
    base: './',
    plugins: [
      react(),
      legacy({
        targets: ['defaults', 'not IE 11'],
        additionalLegacyPolyfills: ['regenerator-runtime/runtime'] 
      })
    ],
    // server: {
    //   port: 3000,
    //   open: true,
    //   proxy: {
    //     '/api': {
    //       target: 'http://192.168.110.68:9001',
    //       changeOrigin: true,
    //       rewrite: (path) => path.replace(/^\/api/, '/api')
    //     }
    //   }
    // },
    server: {
      host: '0.0.0.0',
      port: 3000,
      open: true,
      allowedHosts: ['dev.dms.com'],
      proxy: {
        '/api': {
          // target: 'http://192.168.110.81:9001',
          target: 'http://39.104.18.179:9001',
          // target: 'http://172.20.10.4:9001',
          changeOrigin: true,
          rewrite: (path) => path.replace(/^\/api/, '/api')
        }
      }
    },
    resolve: {
      alias: {
        '@': '/src',
      },
    },
    define: {
      'import.meta.env.VITE_API_BASE_URL': JSON.stringify(
        mode === 'test'
          ? 'http://10.20.41.161:4230'  // 测试环境API基础URL
          : mode === 'production'
            ? 'http://10.20.54.81:4230' // 生产环境API基础URL
            : 'http://123.127.8.117:4230'  // 开发环境API基础URL
      ),
      // 新增：地面站数据同步软件域名+端口配置
      'import.meta.env.VITE_SYNC_SOFTWARE_URL': JSON.stringify(
        mode === 'test'
          ? 'http://10.20.41.161:4235'   // 测试环境地面站软件域名+端口
          : mode === 'production'
            ? 'http://10.20.54.25:4235'  // 生产环境地面站软件域名+端口
            : 'http://123.127.8.117:4235' // 开发环境地面站软件域名+端口
      )
    }
  };
}); 